import pandas as pd
import matplotlib.pyplot as plt

# 假设我们有一个CSV文件，其中包含up主和他们的收藏次数
# CSV文件结构如下：
# up主,收藏次数
# up1,123
# up2,456
# ...

# 读取CSV文件
df = pd.read_csv('bilibili_videos.csv', encoding='utf-8')

# 计算每个up主的收藏次数总和（这里假设CSV文件已经按up主和收藏次数给出）
up_main_favorite_count = df.groupby('up主')['收藏次数'].sum()

# 找出收藏次数最多的前10个up主
top_10_up_main = up_main_favorite_count.nlargest(10)

# 绘制条形图
plt.figure(figsize=(12, 6))
plt.bar(top_10_up_main.index, top_10_up_main.values, color=plt.cm.tab20.colors)
plt.title('Top 10 Up主收藏次数')
plt.xlabel('Up主')
plt.ylabel('收藏次数')
plt.xticks(rotation=45)
plt.show()
